package com.czmh.etc.onlinepubsys.services;

import com.czmh.etc.onlinepubsys.dto.EtcYueSaveApplyReqDTO;
import com.czmh.etc.onlinepubsys.feign.newrun.entity.yue.EtcYueBankCardInfo;
import com.czmh.etc.onlinepubsys.feign.newrun.entity.yue.EtcYueShippingInfo;
import com.czmh.etc.onlinepubsys.json.JsonResult;

/**
 * @ClassName：YuePubService
 * @Description：TODO
 * @Author： sevenchen.
 * @Date：2019/10/18 11:45.
 * @Version：1.0.0
 */
public interface YueService {
    /**
     * 保存用户申请信息
     *
     * @param userId                用户id
     * @param saveApplyReqDTO       申请信息
     * @return
     */
    JsonResult saveApplyInfo(String userId, EtcYueSaveApplyReqDTO saveApplyReqDTO);

    /**
     * 添加收货地址
     *
     * @param userId                用户id
     * @param shippingInfo          收货地址信息
     * @return
     */
    JsonResult addShippingInfo(String userId, EtcYueShippingInfo shippingInfo);

    /**
     * 根据证件号查询签约方式
     * @param certNo 不可为空！身份证号
     * @return
     */
    JsonResult querySignType(String certNo);

    /**
     * 查询车辆是否已办理粤通卡
     * @param mblNo 可为空! 手机号码
     * @param plateColor 不可为空! 车牌颜色: 0-蓝. 4-绿色.
     * @param plateNo 不可为空! 车牌号码
     * @return
     */
    JsonResult queryIssue(String mblNo,
                          String plateColor,
                          String plateNo);

    /**
     * 银行卡绑定
     * 
     * @param userId              用户id
     * @param bankCardInfo        银行卡信息
     * @return
     */
    JsonResult bindAccount(String userId, EtcYueBankCardInfo bankCardInfo);

    /**
     * 查询申请进度信息
     * 
     * @param applyId             申请id
     * @return
     */
    JsonResult checkOrder(String applyId);
}
